// // 图片上传工具

// /**
//  * 从相册选择图片或拍照
//  * @param {Object} options 配置选项
//  * @returns {Promise} 返回选择的图片路径
//  */
// export const chooseImage = (options = {}) => {
//   return new Promise((resolve, reject) => {
//     uni.chooseImage({
//       count: options.count || 1,
//       sizeType: options.sizeType || ['original', 'compressed'],
//       sourceType: options.sourceType || ['album', 'camera'],
//       success: (res) => {
//         const tempFilePaths = res.tempFilePaths;
//         resolve(tempFilePaths);
//       },
//       fail: (err) => {
//         reject(err);
//       }
//     });
//   });
// };

// /**
//  * 上传图片到服务器
//  * @param {String} filePath 本地文件路径
//  * @param {String} url 上传地址
//  * @returns {Promise} 返回上传结果
//  */
// export const uploadFile = (filePath, url = '/api/file/upload') => {
//   return new Promise((resolve, reject) => {
//     const token = uni.getStorageSync('token');
    
//     // 获取正确的服务器基础URL
//     const baseUrl = (() => {
//       // 判断平台
//       if (process.env.NODE_ENV === 'development') {
//           // 开发环境，区分真机和模拟器
//           // #ifdef H5
//           return 'http://localhost:8080';
//           // #endif
          
//           // #ifdef MP-WEIXIN
//           const platform = uni.getSystemInfoSync().platform;
//           // 真机环境下使用实际IP地址，模拟器仍使用localhost
//           return platform === 'devtools' ? 'http://localhost:8080' : 'http://192.168.31.164:8080';
//           // #endif
//       } else {
//           // 生产环境使用实际服务器地址
//           return 'http://192.168.31.164:8080';
//       }
//     })();
    
//     uni.uploadFile({
//       url: baseUrl + url,
//       filePath: filePath,
//       name: 'file',
//       header: {
//         'Authorization': token ? `Bearer ${token}` : ''
//       },
//       success: (res) => {
//         try {
//           if (res.statusCode === 200) {
//             const data = JSON.parse(res.data);
//             if (data.code === 200) {
//               resolve(data.data);
//             } else {
//               uni.showToast({
//                 title: data.message || '上传失败',
//                 icon: 'none'
//               });
//               reject(data);
//             }
//           } else {
//             uni.showToast({
//               title: '上传失败',
//               icon: 'none'
//             });
//             reject(new Error('上传失败'));
//           }
//         } catch (e) {
//           uni.showToast({
//             title: '解析响应失败',
//             icon: 'none'
//           });
//           reject(e);
//         }
//       },
//       fail: (err) => {
//         uni.showToast({
//           title: '上传失败',
//           icon: 'none'
//         });
//         reject(err);
//       }
//     });
//   });
// };

// /**
//  * 选择并上传图片的组合方法
//  * @param {Object} options 选择图片配置
//  * @returns {Promise} 返回上传结果
//  */
// export const chooseAndUploadImage = async (options = {}) => {
//   try {
//     // 选择图片
//     const tempFilePaths = await chooseImage(options);
//     if (tempFilePaths && tempFilePaths.length > 0) {
//       // 上传图片
//       const result = await uploadFile(tempFilePaths[0]);
//       return result;
//     }
//   } catch (error) {
//     console.error('选择或上传图片失败', error);
//     throw error;
//   }
// };

// /**
//  * 图片路径处理 - 确保完整的URL
//  * @param {String} url 图片路径
//  * @returns {String} 处理后的完整URL
//  */
// export const getImageUrl = (url) => {
//   if (!url) return '';
  
//   // 如果已经是完整URL则直接返回
//   if (url.startsWith('http://') || url.startsWith('https://')) {
//     return url;
//   }
  
//   // 获取正确的服务器基础URL
//   const baseUrl = (() => {
//     // 判断平台
//     if (process.env.NODE_ENV === 'development') {
//         // 开发环境，区分真机和模拟器
//         // #ifdef H5
//         return 'http://localhost:8080';
//         // #endif
        
//         // #ifdef MP-WEIXIN
//         const platform = uni.getSystemInfoSync().platform;
//         // 真机环境下使用实际IP地址，模拟器仍使用localhost
//         return platform === 'devtools' ? 'http://localhost:8080' : 'http://192.168.31.164:8080';
//         // #endif
//     } else {
//         // 生产环境使用实际服务器地址
//         return 'http://192.168.31.164:8080';
//     }
//   })();
  
//   // 处理相对路径，添加服务器基础URL
//   return baseUrl + url;
// }; 